package com.primb.bench.project.home.entity;

import android.os.Parcel;
import android.os.Parcelable;

/**
 * Created by Chen on 2017/6/22.
 * 功能描述：
 */

public class PromiseApplyEntity implements Parcelable {
    /**
     * 承诺测算结果
     */
    String promiseAdjustRate = "0";//承诺兑现调节值
    String promiseAdjustDirectRate;//调节后指导利率
    String promiseStartDate = "";//承诺起始日
    String promiseEndDate = "";//承诺截止日
    String promiseDepositDayNow = "0";//当前存款月日均
    String promiseDepositDay = "0";//承诺存款月日均
    String promiseDepositSumNow = "0";//当前存款余额
    String promiseDepositSum = "0";//承诺存款余额
    boolean isPromiseBasicAccount;//承诺开立基本户
    boolean isPromiseSettleAccount;//承诺开立外币结算户

    boolean isPromiseSalaryAccount;//承诺开立代发工资户
    String promiseOtherSceneDetail = "";//其他承诺场景
    String promiseOtherScene = "0";//其他承诺场景优惠(BP)

    String promiseRemark = "";//备注
    String promiseFavorableRate = "0";//承诺场景优惠利率
    String promisePoint = "0";//透支贡献点

    boolean isPromiseDetail;
    boolean isApply;

    String applyRate;//申请利率
    String applyDate;//申请时间
    String applyReason = "";//申请理由说明

    public boolean isPromiseDetail() {
        return isPromiseDetail;
    }

    public void setPromiseDetail(boolean promiseDetail) {
        isPromiseDetail = promiseDetail;
    }

    public boolean isApply() {
        return isApply;
    }

    public void setApply(boolean apply) {
        isApply = apply;
    }

    public String getApplyRate() {
        return applyRate;
    }

    public void setApplyRate(String applyRate) {
        this.applyRate = applyRate;
    }

    public String getApplyDate() {
        return applyDate;
    }

    public void setApplyDate(String applyDate) {
        this.applyDate = applyDate;
    }

    public String getApplyReason() {
        return applyReason;
    }

    public void setApplyReason(String applyReason) {
        this.applyReason = applyReason;
    }

    public String getPromiseAdjustRate() {
        return promiseAdjustRate;
    }

    public void setPromiseAdjustRate(String promiseAdjustRate) {
        if (!promiseAdjustRate.equals(""))
            this.promiseAdjustRate = promiseAdjustRate;
    }

    public String getPromiseAdjustDirectRate() {
        return promiseAdjustDirectRate;
    }

    public void setPromiseAdjustDirectRate(String promiseAdjustDirectRate) {
        this.promiseAdjustDirectRate = promiseAdjustDirectRate;
    }

    public String getPromiseStartDate() {
        return promiseStartDate;
    }

    public void setPromiseStartDate(String promiseStartDate) {
        this.promiseStartDate = promiseStartDate;
    }

    public String getPromiseEndDate() {
        return promiseEndDate;
    }

    public void setPromiseEndDate(String promiseEndDate) {
        this.promiseEndDate = promiseEndDate;
    }

    public String getPromiseDepositDayNow() {
        return promiseDepositDayNow;
    }

    public void setPromiseDepositDayNow(String promiseDepositDayNow) {
        if (!promiseDepositDayNow.equals(""))
        this.promiseDepositDayNow = promiseDepositDayNow;
    }

    public String getPromiseDepositDay() {
        return promiseDepositDay;
    }

    public void setPromiseDepositDay(String promiseDepositDay) {
        if (!promiseDepositDay.equals(""))
        this.promiseDepositDay = promiseDepositDay;
    }

    public String getPromiseDepositSumNow() {
        return promiseDepositSumNow;
    }

    public void setPromiseDepositSumNow(String promiseDepositSumNow) {
        if (!promiseDepositSumNow.equals(""))
        this.promiseDepositSumNow = promiseDepositSumNow;
    }

    public String getPromiseDepositSum() {
        return promiseDepositSum;
    }

    public void setPromiseDepositSum(String promiseDepositSum) {
        if (!promiseDepositSum.equals(""))
        this.promiseDepositSum = promiseDepositSum;
    }

    public boolean isPromiseBasicAccount() {
        return isPromiseBasicAccount;
    }

    public void setPromiseBasicAccount(boolean promiseBasicAccount) {
        isPromiseBasicAccount = promiseBasicAccount;
    }

    public boolean isPromiseSettleAccount() {
        return isPromiseSettleAccount;
    }

    public void setPromiseSettleAccount(boolean promiseSettleAccount) {
        isPromiseSettleAccount = promiseSettleAccount;
    }

    public boolean isPromiseSalaryAccount() {
        return isPromiseSalaryAccount;
    }

    public void setPromiseSalaryAccount(boolean promiseSalaryAccount) {
        isPromiseSalaryAccount = promiseSalaryAccount;
    }

    public String getPromiseOtherSceneDetail() {
        return promiseOtherSceneDetail;
    }

    public void setPromiseOtherSceneDetail(String promiseOtherSceneDetail) {
        this.promiseOtherSceneDetail = promiseOtherSceneDetail;
    }

    public String getPromiseOtherScene() {
        return promiseOtherScene;
    }

    public void setPromiseOtherScene(String promiseOtherScene) {
        if (!promiseOtherScene.equals(""))
        this.promiseOtherScene = promiseOtherScene;
    }

    public String getPromiseRemark() {
        return promiseRemark;
    }

    public void setPromiseRemark(String promiseRemark) {
        this.promiseRemark = promiseRemark;
    }

    public String getPromiseFavorableRate() {
        return promiseFavorableRate;
    }

    public void setPromiseFavorableRate(String promiseFavorableRate) {
        if (!promiseFavorableRate.equals(""))
        this.promiseFavorableRate = promiseFavorableRate;
    }

    public String getPromisePoint() {
        return promisePoint;
    }

    public void setPromisePoint(String promisePoint) {
        this.promisePoint = promisePoint;
    }

    public PromiseApplyEntity() {
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(this.promiseAdjustRate);
        dest.writeString(this.promiseAdjustDirectRate);
        dest.writeString(this.promiseStartDate);
        dest.writeString(this.promiseEndDate);
        dest.writeString(this.promiseDepositDayNow);
        dest.writeString(this.promiseDepositDay);
        dest.writeString(this.promiseDepositSumNow);
        dest.writeString(this.promiseDepositSum);
        dest.writeByte(this.isPromiseBasicAccount ? (byte) 1 : (byte) 0);
        dest.writeByte(this.isPromiseSettleAccount ? (byte) 1 : (byte) 0);
        dest.writeByte(this.isPromiseSalaryAccount ? (byte) 1 : (byte) 0);
        dest.writeString(this.promiseOtherSceneDetail);
        dest.writeString(this.promiseOtherScene);
        dest.writeString(this.promiseRemark);
        dest.writeString(this.promiseFavorableRate);
        dest.writeString(this.promisePoint);
        dest.writeByte(this.isPromiseDetail ? (byte) 1 : (byte) 0);
        dest.writeByte(this.isApply ? (byte) 1 : (byte) 0);
        dest.writeString(this.applyRate);
        dest.writeString(this.applyDate);
        dest.writeString(this.applyReason);
    }

    protected PromiseApplyEntity(Parcel in) {
        this.promiseAdjustRate = in.readString();
        this.promiseAdjustDirectRate = in.readString();
        this.promiseStartDate = in.readString();
        this.promiseEndDate = in.readString();
        this.promiseDepositDayNow = in.readString();
        this.promiseDepositDay = in.readString();
        this.promiseDepositSumNow = in.readString();
        this.promiseDepositSum = in.readString();
        this.isPromiseBasicAccount = in.readByte() != 0;
        this.isPromiseSettleAccount = in.readByte() != 0;
        this.isPromiseSalaryAccount = in.readByte() != 0;
        this.promiseOtherSceneDetail = in.readString();
        this.promiseOtherScene = in.readString();
        this.promiseRemark = in.readString();
        this.promiseFavorableRate = in.readString();
        this.promisePoint = in.readString();
        this.isPromiseDetail = in.readByte() != 0;
        this.isApply = in.readByte() != 0;
        this.applyRate = in.readString();
        this.applyDate = in.readString();
        this.applyReason = in.readString();
    }

    public static final Creator<PromiseApplyEntity> CREATOR = new Creator<PromiseApplyEntity>() {
        @Override
        public PromiseApplyEntity createFromParcel(Parcel source) {
            return new PromiseApplyEntity(source);
        }

        @Override
        public PromiseApplyEntity[] newArray(int size) {
            return new PromiseApplyEntity[size];
        }
    };
}
